/*
 * @(#)OtherIdentifier.java
 * Date 2013-08-08
 * Version 1.0
 * Author Jim Horner
 * Copyright (c)2012
 */


package us.hornerscorners.lamppost.model.patient;

import java.util.ArrayList;
import java.util.List;
import org.codehaus.jackson.annotate.JsonIgnoreProperties;

import us.hornerscorners.lamppost.model.common.InstanceIdentifier;


/**
 *
 * @author jim
 *
 * PRPAMT201301UV02OtherIDs
 *
 * <asOtherIDs classCode="PAT">
 *   <id root="2.16.840.1.113883.4.1" extension="590-52-6470"/>
 *   <scopingOrganization classCode="ORG" determinerCode="INSTANCE">
 *       <id root="2.16.840.1.113883.4.1"/>
 *   </scopingOrganization>
 * </asOtherIDs>
 *
 *
 */
@JsonIgnoreProperties(ignoreUnknown = true)
public class OtherIdentifier {

    /** Field description */
    private final List<InstanceIdentifier> identifiers;

    /** Field description */
    private Organization scopingOrganization;

    /** Field description */
    private String typeCode;

    /**
     * Constructs ...
     *
     */
    public OtherIdentifier() {

        super();

        this.identifiers = new ArrayList<>();
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public List<InstanceIdentifier> getIdentifiers() {
        return identifiers;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public Organization getScopingOrganization() {
        return scopingOrganization;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public String getTypeCode() {
        return typeCode;
    }

    /**
     * Method description
     *
     *
     * @param scopingOrganization
     */
    public void setScopingOrganization(Organization scopingOrganization) {
        this.scopingOrganization = scopingOrganization;
    }

    /**
     * Method description
     *
     *
     * @param typeCode
     */
    public void setTypeCode(String typeCode) {
        this.typeCode = typeCode;
    }
}
